package com.sakiko.test;

import com.sakiko.aop_06.Calculator;
import com.sakiko.aop_06.CalculatorImpl;
import com.sakiko.config_part2.JavaConfig06;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.junit.jupiter.SpringJUnitConfig;

// 切面优先级设置

/**
 * @Author: hyper_y@163.com
 * description:
 * todo: 切面优先级的理解
 *  1、优先级高低的影响
 *      优先级高的切面，前置先执行，后置后执行
 *  2、如何定制优先级顺序
 *      @Order() 数字越小，优先级越高 【不建议使用负数】
 *      建议设置值的时候，预留部分值域。
 */
@SpringJUnitConfig(JavaConfig06.class)
public class SpringTest06 {

    @Autowired
//    private Calculator calculator;
    private CalculatorImpl calculator; // 测试 CGLib动态代理

    @Test
    public void test01() {
        System.out.println(calculator.add(1, 1));
    }
}
